/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.eplatform.modules.sys.service.officeinfo;

import java.util.List;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.eplatform.common.persistence.Page;
import com.eplatform.common.service.BaseService;
import com.eplatform.common.service.CrudService;
import com.eplatform.common.utils.CacheUtils;
import com.eplatform.modules.cms.utils.CmsUtils;
import com.eplatform.modules.sys.entity.Office;
import com.eplatform.modules.sys.entity.User;
import com.eplatform.modules.sys.entity.officeinfo.SysOfficeInfo;
import com.eplatform.modules.sys.utils.UserUtils;
import com.eplatform.modules.sys.dao.officeinfo.SysOfficeInfoDao;

/**
 * 协会简介Service
 * @author H
 * @version 2016-06-20
 */
@Service
@Transactional(readOnly = true)
public class SysOfficeInfoService extends CrudService<SysOfficeInfoDao, SysOfficeInfo> {

	public SysOfficeInfo get(String id) {
		return super.get(id);
	}
	public SysOfficeInfo getByOffice(SysOfficeInfo sysOfficeInfo) {
		return dao.getByOffice(sysOfficeInfo.getOffice().getId());
	}
	
	public List<SysOfficeInfo> findList(SysOfficeInfo sysOfficeInfo) {
	
		return super.findList(sysOfficeInfo);
	}
	
	public Page<SysOfficeInfo> findPage(Page<SysOfficeInfo> page, SysOfficeInfo sysOfficeInfo) {
		
		// 生成数据权限过滤条件（dsf为dataScopeFilter的简写，在xml中使用 ${sqlMap.dsf}调用权限SQL）
		//sysOfficeInfo.getSqlMap().put("dsf", dataScopeFilter(UserUtils.getUser(), "o2", "a"));
				// 设置分页参数
		return super.findPage(page, sysOfficeInfo);
	}
	
	@Transactional(readOnly = false)
	public void save(SysOfficeInfo sysOfficeInfo) {
		super.save(sysOfficeInfo);
	}
	public boolean checkSingle(SysOfficeInfo sysOfficeInfo){
		return dao.checkSingle( sysOfficeInfo)>0;
	}
	@Transactional(readOnly = false)
	public void delete(SysOfficeInfo sysOfficeInfo) {
		super.delete(sysOfficeInfo);
	}
	/**
	 * 获取总会简介
	 * @param id
	 * @return
	 */
	public SysOfficeInfo getRootOfficeIntroduce() {
		SysOfficeInfo officeinfo =null;//(SysOfficeInfo)CacheUtils.get(CmsUtils.CMS_CACHE, "RootOfficeIntroduce");
		if(officeinfo==null){
			officeinfo= dao.getRootOfficeIntroduce();
			//CacheUtils.put(CmsUtils.CMS_CACHE, "RootOfficeIntroduce",officeinfo);
		}
		return officeinfo;
	}
	public SysOfficeInfo getByOffice(String id){
		return dao.getByOffice(id);
	}
	public Page<SysOfficeInfo> search(Page<SysOfficeInfo> page, SysOfficeInfo sysOfficeInfo) {
		return super.findPage(page, sysOfficeInfo);
	}
}